package com.wcs.exam.common.llm;

import com.wcs.exam.common.llm.impl.bean.Message;
import com.wcs.exam.common.llm.impl.bean.ModelBean;
import org.springframework.web.servlet.mvc.method.annotation.SseEmitter;

import java.util.List;

/**
 * 大模型
 */
public interface LlmFace {

    /**
     * @param modelBean 大模型
     * @param messages  消息
     * @return SseEmitter
     */
    SseEmitter chat(LlmFace llmFace, ModelBean modelBean, List<Message> messages);

    /**
     * 大模型Http请求
     *
     * @param modelBean      大模型
     * @param messages 消息
     * @return LlmBaseResp
     */
    LlmBaseResp http(ModelBean modelBean, List<Message> messages);

    /**
     * 处理返回结果
     *
     * @param content 接口返回的内容
     * @return 过滤后的内容
     */
    String chatHandle(String content);
}
